#include <stdio.h>
#include "consts.h"

// extern说明符表示，该变量在其他文件里面声明，没有必要在当前文件里面为它分配空间。通常用来表示，该变量是多个文件共享的。
extern int a; // a 在文件consts.h中声明

// 但是，变量声明时，同时进行初始化，extern就会无效。
// extern 无效
// extern int i = 0;
// 等同于
// int i = 0;

// 函数内部使用extern声明变量，就相当于该变量是静态存储，每次执行时都要从外部获取它的值。
// 函数本身默认是extern，即该函数可以被外部文件共享，通常省略extern不写。

int main(int argc, char **argv)
{
    printf("%d\n", a);
    return 0;
}